// src/stores/models/RootStore.ts
import { types } from "mobx-state-tree";
import { AuthStore } from "./AuthStore";
import { UiStore } from "./UiStore";
import { UserStore } from "./UserStore";
import { ToolKitStore } from "./ToolKit/toolKitStore";

// 根存储模型
export const RootStore = types.model("RootStore", {
  auth: types.optional(AuthStore, {}),
  ui: types.optional(UiStore, {}),
  user: types.optional(UserStore, {}),
  toolkit: types.optional(ToolKitStore, {}),
}).actions(self => ({
  // 初始化后加载数据
  afterCreate() {
    // 初始化工作可以在这里进行
  }
}));

// 根存储实例类型
export type RootStoreInstance = typeof RootStore.Type;